package redislock

import "log"

// Logger 定义日志接口，便于接入不同的日志系统
type Logger interface {
	Infof(format string, args ...interface{})
	Warnf(format string, args ...interface{})
	Errorf(format string, args ...interface{})
}

// 全局日志接口（默认请根据实际项目实现）
var globalLogger Logger = &defaultLogger{}

// defaultLogger 默认空日志实现，避免nil指针
type defaultLogger struct{}

func (m *defaultLogger) Infof(format string, args ...interface{}) {
	log.Printf("[INFO] "+format, args...)
}

func (m *defaultLogger) Warnf(format string, args ...interface{}) {
	log.Printf("[WARN] "+format, args...)
}

func (m *defaultLogger) Errorf(format string, args ...interface{}) {
	log.Printf("[ERROR] "+format, args...)
}
